﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Renci.Data.Interop.OpenGIS.Iso.tc211_2005.gco;

namespace Renci.Data.Interop.OpenGIS.Iso.tc211_2005.gmd
{
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.isotc211.org/2005/gmd")]
    [System.Xml.Serialization.XmlRootAttribute("MD_DataIdentification", Namespace = "http://www.isotc211.org/2005/gmd", IsNullable = false)]
    public class MD_DataIdentification_Type : AbstractMD_Identification_Type
    {
        private System.Collections.ObjectModel.Collection<MD_SpatialRepresentationTypeCode_PropertyType> _spatialRepresentationType = new System.Collections.ObjectModel.Collection<MD_SpatialRepresentationTypeCode_PropertyType>();
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("spatialRepresentationType")]
        public System.Collections.ObjectModel.Collection<MD_SpatialRepresentationTypeCode_PropertyType> SpatialRepresentationType { get { return this._spatialRepresentationType; } }

        private System.Collections.ObjectModel.Collection<MD_Resolution_PropertyType> _spatialResolution = new System.Collections.ObjectModel.Collection<MD_Resolution_PropertyType>();
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("spatialResolution")]
        public System.Collections.ObjectModel.Collection<MD_Resolution_PropertyType> SpatialResolution { get { return this._spatialResolution; } }

        private System.Collections.ObjectModel.Collection<CharacterString_PropertyType> _language = new System.Collections.ObjectModel.Collection<CharacterString_PropertyType>();
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("language")]
        public System.Collections.ObjectModel.Collection<CharacterString_PropertyType> Language { get { return this._language; } }

        private System.Collections.ObjectModel.Collection<MD_CharacterSetCode_PropertyType> _characterSet = new System.Collections.ObjectModel.Collection<MD_CharacterSetCode_PropertyType>();
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("characterSet")]
        public System.Collections.ObjectModel.Collection<MD_CharacterSetCode_PropertyType> CharacterSet { get { return this._characterSet; } }

        private System.Collections.ObjectModel.Collection<MD_TopicCategoryCode_PropertyType> _topicCategory = new System.Collections.ObjectModel.Collection<MD_TopicCategoryCode_PropertyType>();
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("topicCategory")]
        public System.Collections.ObjectModel.Collection<MD_TopicCategoryCode_PropertyType> TopicCategory { get { return this._topicCategory; } }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("environmentDescription")]
        public CharacterString_PropertyType EnvironmentDescription { get; set; }

        private System.Collections.ObjectModel.Collection<EX_Extent_PropertyType> _extent = new System.Collections.ObjectModel.Collection<EX_Extent_PropertyType>();
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extent")]
        public System.Collections.ObjectModel.Collection<EX_Extent_PropertyType> Extent { get { return this._extent; } }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("supplementalInformation")]
        public CharacterString_PropertyType SupplementalInformation { get; set; }
    }
}
